package com.eshop.modules.mp.service;

import com.eshop.modules.mp.service.dto.UpdateGoodsDto;
import cn.binarywang.wx.miniapp.bean.live.WxMaLiveResult;
import me.chanjar.weixin.common.error.WxErrorException;
import com.eshop.modules.mp.service.dto.WxMaLiveInfo;
import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
import com.eshop.modules.mp.service.dto.WechatLiveDto;
import java.util.List;
import com.eshop.modules.mp.vo.WechatLiveVo;
import org.springframework.data.domain.Pageable;
import com.eshop.modules.mp.service.dto.WechatLiveQueryCriteria;
import com.eshop.modules.mp.domain.WechatLive;
import com.eshop.common.service.BaseService;

public interface WechatLiveService extends BaseService<WechatLive>
{
    boolean synchroWxOlLive();
    
    WechatLiveVo queryAll(final WechatLiveQueryCriteria criteria, final Pageable pageable);
    
    List<WechatLive> queryAll(final WechatLiveQueryCriteria criteria);
    
    boolean saveLive(final WechatLive resources);
    
    void download(final List<WechatLiveDto> all, final HttpServletResponse response) throws IOException;
    
    Integer createRoom(final WxMaLiveInfo.RoomInfo roomInfo) throws WxErrorException;
    
    List<WxMaLiveResult.LiveReplay> getLiveReplay(final Integer roomId);
    
    List<WechatLiveDto> getList(final int page, final int limit, final int order);
    
    boolean addGoods(final UpdateGoodsDto resources);
}
